Software Development Exam  >  Software Development Questions  >  Code and Output (HOTS):#include <iostream&... Start Learning for Free
Code and Output (HOTS):
#include <iostream>
using namespace std;
struct Node {
   int data;
   Node* left;
   Node* right;
};
void printPathsToLeaf(Node* root, int path[], int pathLen) {
   if (root == NULL)
      return;
   path[pathLen] = root->data;
   pathLen++;
   if (root->left == NULL && root->right == NULL) {
      for (int i = 0; i < pathLen; i++)
         cout << path[i] << " ";
      cout << endl;
   } else {
      printPathsToLeaf(root->left, path, pathLen);
      printPathsToLeaf(root->right, path, pathLen);
   }
}
int main() {
   Node* root = new Node();
   root->data = 10;
   root->left = new Node();
   root->left->data = 20;
   root->right = new Node();
   root->right->data = 30;
   root->left->left = new Node();
   root->left->left->data = 40;
   root->left->right = new Node();
   root->left->right->data = 50;
   int path[100];
   printPathsToLeaf(root, path, 0);
   return 0;
}
What will be the output of the above code?
  • a)
    10 20 40
    10 20 50
    10 30
  • b)
    10 30
    10 20 40
    10 20 50
  • c)
    40 20 10
    50 20 10
    30 10
  • d)
    0 10
    40 20 10
    50 20 10
Correct answer is option 'A'. Can you explain this answer?
Most Upvoted Answer
Code and Output (HOTS):#include <iostream>using namespace std;st...
The code defines a function 'printPathsToLeaf' that prints all the paths from the root to the leaf nodes in a binary tree. The tree is created with six nodes, and the function is called with the root node. The output is the paths from the root to the leaf nodes: 10 20 40, 10 20 50, and 10 30.
Attention Software Development Students!
To make sure you are not studying endlessly, EduRev has designed Software Development study material, with Structured Courses, Videos, & Test Series. Plus get personalized analysis, doubt solving and improvement plans to achieve a great score in Software Development.
Explore Courses for Software Development exam

Top Courses for Software Development

Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer?
Question Description
Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer? for Software Development 2024 is part of Software Development preparation. The Question and answers have been prepared according to the Software Development exam syllabus. Information about Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer? covers all topics & solutions for Software Development 2024 Exam. Find important definitions, questions, meanings, examples, exercises and tests below for Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer?.
Solutions for Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer? in English & in Hindi are available as part of our courses for Software Development. Download more important topics, notes, lectures and mock test series for Software Development Exam by signing up for free.
Here you can find the meaning of Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer? defined & explained in the simplest way possible. Besides giving the explanation of Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer?, a detailed solution for Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer? has been provided alongside types of Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer? theory, EduRev gives you an ample number of questions to practice Code and Output (HOTS):#include <iostream>using namespace std;struct Node { int data; Node* left; Node* right;};void printPathsToLeaf(Node* root, int path[], int pathLen) { if (root == NULL) return; path[pathLen] = root->data; pathLen++; if (root->left == NULL && root->right == NULL) { for (int i = 0; i < pathLen; i++) cout << path[i] << " "; cout << endl; } else { printPathsToLeaf(root->left, path, pathLen); printPathsToLeaf(root->right, path, pathLen); }}int main() { Node* root = new Node(); root->data = 10; root->left = new Node(); root->left->data = 20; root->right = new Node(); root->right->data = 30; root->left->left = new Node(); root->left->left->data = 40; root->left->right = new Node(); root->left->right->data = 50; int path[100]; printPathsToLeaf(root, path, 0); return 0;}What will be the output of the above code?a)10 20 4010 20 5010 30b)10 3010 20 4010 20 50c)40 20 1050 20 1030 10d)0 1040 20 1050 20 10Correct answer is option 'A'. Can you explain this answer? tests, examples and also practice Software Development tests.
Explore Courses for Software Development exam

Top Courses for Software Development

Explore Courses
Signup for Free!
Signup to see your scores go up within 7 days! Learn & Practice with 1000+ FREE Notes, Videos & Tests.
10M+ students study on EduRev